import java.util.Arrays;
import java.util.Locale;

public class Test_0209 {
    public static void main(String[] args) {
//        String s = "leetcode";
//        System.out.println(firstUniqChar(s));
//        String s = "Hello World";
//        System.out.println(lengthOfLastWord(s));
        String s = " ";
        System.out.println(isPalindrome(s));
    }

    private static boolean isLegal(char ret) {
        if((ret >= 'a' && ret <= 'z') || (ret >= '0' && ret <= '9')){
            return true;
        }
        return false;
    }
    public static boolean isPalindrome(String s) {
        int left = 0;
        int right = s.length() - 1;
        String s1 = s.toLowerCase();
        while (left < right) {
            while (left < right && !isLegal(s.charAt(left))) {
                left++;
            }
            while (left < right && !isLegal(s.charAt(right))) {
                right--;
            }
            if(s.charAt(left) == s.charAt(right)){
                left++;
                right--;
            }else {
                return false;
            }
        }
        return true;
    }
}
//    public static int lengthOfLastWord(String s) {
//        String[] strings = s.split(" ");
//        return strings[strings.length - 1].length();
//    }


//    public static int firstUniqChar(String s) {
//        int[] arr = new int[26];
//
//        for (int i = 0; i < s.length(); i++) {
//            char ret = s.charAt(i);
//            arr[ret - 'a']++;
//        }
//        for (int i = 0; i < s.length(); i++) {
//            char ret = s.charAt(i);
//            if(arr[ret - 'a'] == 1){
//                return i;
//            }
//        }
//        return -1;
//    }